Change-Id: I8ed0482344bb06afa6079540ea2a3854930da225
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2383
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit
1f51bbee0e7661d5607efe2603c59d83f410dd3d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205492
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208405
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Gbp-Pq: Name Show-infobar-for-calc-graphics-with-remote-content-too.diff
bool idleCheckLinks();
bool hasDdeLinks() const;
- bool hasDdeOrOleOrWebServiceLinks() const;
+ bool hasExternalLinks() const;
bool hasExternalRefLinks() const;
bool updateDdeOrOleOrWebServiceLinks(weld::Window* pWin);
size_t getDdeLinkCount() const;
private:
- bool hasDdeOrOleOrWebServiceLinks(bool bDde, bool bOle, bool bWebService) const;
+ bool hasExternalLinks(bool bDde, bool bOle, bool bWebService, bool bGraphic) const;
};
}
#include <editeng/flstitem.hxx>
#include <sfx2/fcontnr.hxx>
#include <sfx2/infobar.hxx>
+#include <sfx2/linkmgr.hxx>
#include <sfx2/objface.hxx>
#include <sfx2/docfile.hxx>
#include <sfx2/docfilt.hxx>
}
m_pDocument->UpdateAreaLinks();
+
+ // update linked graphics from the draw layer
+ if (sfx2::LinkManager* pLinkMgr = m_pDocument->GetDocLinkManager().getLinkManager(false))
+ {
+ pLinkMgr->UpdateAllLinks(false, false, nullptr, u""_ustr);
+ }
}
IMPL_LINK( ScDocShell, ReloadAllLinksHdl, weld::Button&, rButton, void )
bool DocumentLinkManager::hasDdeLinks() const
{
- return hasDdeOrOleOrWebServiceLinks(true, false, false);
+ return hasExternalLinks(true, false, false, false);
}
-bool DocumentLinkManager::hasDdeOrOleOrWebServiceLinks() const
+bool DocumentLinkManager::hasExternalLinks() const
{
- return hasDdeOrOleOrWebServiceLinks(true, true, true);
+ return hasExternalLinks(true, true, true, true);
}
-bool DocumentLinkManager::hasDdeOrOleOrWebServiceLinks(bool bDde, bool bOle, bool bWebService) const
+bool DocumentLinkManager::hasExternalLinks(bool bDde, bool bOle, bool bWebService, bool bGraphic) const
{
sfx2::LinkManager* pMgr = mpImpl->mpLinkManager;
if (!pMgr)
return true;
if (bWebService && dynamic_cast<ScWebServiceLink*>(pBase))
return true;
+ if (bGraphic && pBase->GetObjType() == sfx2::SvBaseLinkObjectType::ClientGraphic)
+ return true;
}
return false;
if (!bLink)
{
const sc::DocumentLinkManager& rMgr = rDoc.GetDocLinkManager();
- if (rDoc.HasLinkFormulaNeedingCheck() || rDoc.HasAreaLinks() || rMgr.hasDdeOrOleOrWebServiceLinks())
+ if (rDoc.HasLinkFormulaNeedingCheck() || rDoc.HasAreaLinks() || rMgr.hasExternalLinks())
bLink = true;
}
if (bLink)